23 research outputs found

    On the Evaluation of RDF Distribution Algorithms Implemented over Apache Spark

    Full text link
    Querying very large RDF data sets in an efficient manner requires a sophisticated distribution strategy. Several innovative solutions have recently been proposed for optimizing data distribution with predefined query workloads. This paper presents an in-depth analysis and experimental comparison of five representative and complementary distribution approaches. For achieving fair experimental results, we are using Apache Spark as a common parallel computing framework by rewriting the concerned algorithms using the Spark API. Spark provides guarantees in terms of fault tolerance, high availability and scalability which are essential in such systems. Our different implementations aim to highlight the fundamental implementation-independent characteristics of each approach in terms of data preparation, load balancing, data replication and to some extent to query answering cost and performance. The presented measures are obtained by testing each system on one synthetic and one real-world data set over query workloads with differing characteristics and different partitioning constraints.Comment: 16 pages, 3 figure

    A Type System for Interactive JSON Schema Inference (Extended Abstract)

    Get PDF
    In this paper we present the first JSON type system that provides the possibility of inferring a schema by adopting different levels of precision/succinctness for different parts of the dataset, under user control. This feature gives the data analyst the possibility to have detailed schemas for parts of the data of greater interest, while more succinct schema is provided for other parts, and the decision can be changed as many times as needed, in order to explore the schema in a gradual fashion, moving the focus to different parts of the collection, without the need of reprocessing data and by only performing type rewriting operations on the most precise schema

    Schema Inference for Massive JSON Datasets

    Get PDF
    In the recent years JSON affirmed as a very popular data format for representing massive data collections. JSON data collections are usually schemaless. While this ensures sev- eral advantages, the absence of schema information has im- portant negative consequences: the correctness of complex queries and programs cannot be statically checked, users cannot rely on schema information to quickly figure out the structural properties that could speed up the formulation of correct queries, and many schema-based optimizations are not possible. In this paper we deal with the problem of inferring a schema from massive JSON datasets. We first identify a JSON type language which is simple and, at the same time, expressive enough to capture irregularities and to give com- plete structural information about input data. We then present our main contribution, which is the design of a schema inference algorithm, its theoretical study, and its implemen- tation based on Spark, enabling reasonable schema infer- ence time for massive collections. Finally, we report about an experimental analysis showing the effectiveness of our ap- proach in terms of execution time, precision, and conciseness of inferred schemas, and scalability

    Analyse statique pour l'optimisation des mises à jour de documents XML temporels

    Get PDF
    Ces dernières années ont été marquées par l adoption en masse de XML comme format d échange et de représentation des données stockées sur le web. Cette évolution s est accompagnée du développement de langages pour l interrogation et la manipulation des données XML et de la mise en œuvre de plusieurs systèmes pour le stockage et le traitement des ces dernières. Parmi ces systèmes, les moteurs mémoire centrale ont été développés pour faire face à des besoins spécifiques d applications qui ne nécessitant pas les fonctionnalités avancées des SGBD traditionnels. Ces moteurs offrent les mêmes fonctionnalités que les systèmes traditionnels sauf que contrairement à ces derniers, ils nécessitent de charger entièrement les documents en mémoire centrale pour pouvoir les traiter. Par conséquent, ces systèmes sont limités quant à la taille des documents pouvant être traités. Dans cette thèse nous nous intéressons aux aspects liés à l évolution des données XML et à la gestion de la dimension temporelle de celles-ci. Cette thèse comprend deux parties ayant comme objectif commun le développement de méthodes efficaces pour le traitement des documents XML volumineux en utilisant les moteurs mémoire centrale. Dans la première partie nous nous focalisons sur la mise à jour des documents XML statiques. Nous proposons une technique d optimisation basée sur la projection XML et sur l utilisation des schémas. La projection est une méthode qui a été proposée dans le cadre des requêtes afin de résoudre les limitations des moteurs mémoire centrale. Son utilisation pour le cas des mises à jour soulève de nouveaux problèmes liés notamment à la propagation des effets des mises à jour. La deuxième partie est consacrée à la construction et à la maintenance des documents temporels, toujours sous la contrainte d espace. A cette contrainte s ajoute la nécessité de générer des documents efficaces du point de vue du stockage. Notre contribution consiste en deux méthodes. La première méthode s applique dans le cas général pour lequel aucune information n est utilisée pour la construction des documents temporels. Cette méthode est conçue pour être réalisée en streaming et permet ainsi le traitement de document quasiment sans limite de taille. La deuxième méthode s applique dans le cas où les changements sont spécifiés par des mises à jour. Elle utilise le paradigme de projection ce qui lui permet en outre de manipuler des documents volumineux de générer des documents temporels satisfaisant du point de vue du stockage.The last decade has witnessed a rapid expansion of XML as a format for representing and exchanging data through the web. In order to follow this evolution, many languages have been proposed to query, update or transform XML documents. At the same time, a range set of systems allowing to store and process XML documents have been developed. Among these systems, main-memory engines are lightweight systems that are the favored choice for applications that do not require complex functionalities of traditional DBMS such as transaction management and secondary storage indexes. These engines require to loading the documents to be processed entirely into main-memory. Consequently, they suffer from space limitations and are not able to process quite large documents. In this thesis, we investigate issues related to the evolution of XML documents and to the management of the temporal dimension for XML. This thesis consists of two parts sharing the common goal of developing efficient techniques for processing large XML documents using main-memory engines. The first part investigates the optimization of update for static XML documents. We have developed a technique based on XML projection, a method that has been proposed to overcome the limitations of main-memory engines in the case of querying. We have devised for a new scenario for projection allowing the propagation of the updates effects. The second of the thesis investigates building and maintaining time-stamped XML documents under space limitations. Our contribution consists in two methods. The first method can be applied in the general case where no restriction is made on the evolution of the XML documents. This method is designed to be performed in streaming and allows thus processing large documents. The second method deals with the case where the changes are specified by updates. It is based on the projection paradigm which it allows it for processing large documents and for generating time-stamped documents satisfactory from the point of view of storage. We provide a means to comparing time-stamped wrt space occupancy.PARIS11-SCD-Bib. électronique (914719901) / SudocSudocFranceF

    Static analysis for optimizing the update of large temporal XML documents

    No full text
    Ces dernières années ont été marquées par l’adoption en masse de XML comme format d’échange et de représentation des données stockées sur le web. Cette évolution s’est accompagnée du développement de langages pour l’interrogation et la manipulation des données XML et de la mise en œuvre de plusieurs systèmes pour le stockage et le traitement des ces dernières. Parmi ces systèmes, les moteurs mémoire centrale ont été développés pour faire face à des besoins spécifiques d’applications qui ne nécessitant pas les fonctionnalités avancées des SGBD traditionnels. Ces moteurs offrent les mêmes fonctionnalités que les systèmes traditionnels sauf que contrairement à ces derniers, ils nécessitent de charger entièrement les documents en mémoire centrale pour pouvoir les traiter. Par conséquent, ces systèmes sont limités quant à la taille des documents pouvant être traités. Dans cette thèse nous nous intéressons aux aspects liés à l’évolution des données XML et à la gestion de la dimension temporelle de celles-ci. Cette thèse comprend deux parties ayant comme objectif commun le développement de méthodes efficaces pour le traitement des documents XML volumineux en utilisant les moteurs mémoire centrale. Dans la première partie nous nous focalisons sur la mise à jour des documents XML statiques. Nous proposons une technique d’optimisation basée sur la projection XML et sur l’utilisation des schémas. La projection est une méthode qui a été proposée dans le cadre des requêtes afin de résoudre les limitations des moteurs mémoire centrale. Son utilisation pour le cas des mises à jour soulève de nouveaux problèmes liés notamment à la propagation des effets des mises à jour. La deuxième partie est consacrée à la construction et à la maintenance des documents temporels, toujours sous la contrainte d’espace. A cette contrainte s’ajoute la nécessité de générer des documents efficaces du point de vue du stockage. Notre contribution consiste en deux méthodes. La première méthode s’applique dans le cas général pour lequel aucune information n’est utilisée pour la construction des documents temporels. Cette méthode est conçue pour être réalisée en streaming et permet ainsi le traitement de document quasiment sans limite de taille. La deuxième méthode s’applique dans le cas où les changements sont spécifiés par des mises à jour. Elle utilise le paradigme de projection ce qui lui permet en outre de manipuler des documents volumineux de générer des documents temporels satisfaisant du point de vue du stockage.The last decade has witnessed a rapid expansion of XML as a format for representing and exchanging data through the web. In order to follow this evolution, many languages have been proposed to query, update or transform XML documents. At the same time, a range set of systems allowing to store and process XML documents have been developed. Among these systems, main-memory engines are lightweight systems that are the favored choice for applications that do not require complex functionalities of traditional DBMS such as transaction management and secondary storage indexes. These engines require to loading the documents to be processed entirely into main-memory. Consequently, they suffer from space limitations and are not able to process quite large documents. In this thesis, we investigate issues related to the evolution of XML documents and to the management of the temporal dimension for XML. This thesis consists of two parts sharing the common goal of developing efficient techniques for processing large XML documents using main-memory engines. The first part investigates the optimization of update for static XML documents. We have developed a technique based on XML projection, a method that has been proposed to overcome the limitations of main-memory engines in the case of querying. We have devised for a new scenario for projection allowing the propagation of the updates effects. The second of the thesis investigates building and maintaining time-stamped XML documents under space limitations. Our contribution consists in two methods. The first method can be applied in the general case where no restriction is made on the evolution of the XML documents. This method is designed to be performed in streaming and allows thus processing large documents. The second method deals with the case where the changes are specified by updates. It is based on the projection paradigm which it allows it for processing large documents and for generating time-stamped documents satisfactory from the point of view of storage. We provide a means to comparing time-stamped wrt space occupancy

    Analyse statique pour l'optimisation des mises à jour de documents XML temporels

    No full text
    The last decade has witnessed a rapid expansion of XML as a format for representing and exchanging data through the web. In order to follow this evolution, many languages have been proposed to query, update or transform XML documents. At the same time, a range set of systems allowing to store and process XML documents have been developed. Among these systems, main-memory engines are lightweight systems that are the favored choice for applications that do not require complex functionalities of traditional DBMS such as transaction management and secondary storage indexes. These engines require to loading the documents to be processed entirely into main-memory. Consequently, they suffer from space limitations and are not able to process quite large documents. In this thesis, we investigate issues related to the evolution of XML documents and to the management of the temporal dimension for XML. This thesis consists of two parts sharing the common goal of developing efficient techniques for processing large XML documents using main-memory engines. The first part investigates the optimization of update for static XML documents. We have developed a technique based on XML projection, a method that has been proposed to overcome the limitations of main-memory engines in the case of querying. We have devised for a new scenario for projection allowing the propagation of the updates effects. The second of the thesis investigates building and maintaining time-stamped XML documents under space limitations. Our contribution consists in two methods. The first method can be applied in the general case where no restriction is made on the evolution of the XML documents. This method is designed to be performed in streaming and allows thus processing large documents. The second method deals with the case where the changes are specified by updates. It is based on the projection paradigm which it allows it for processing large documents and for generating time-stamped documents satisfactory from the point of view of storage. We provide a means to comparing time-stamped wrt space occupancy.Ces dernières années ont été marquées par l'adoption en masse de XML comme format d'échange et de représentation des données stockées sur le web. Cette évolution s'est accompagnée du développement de langages pour l'interrogation et la manipulation des données XML et de la mise en œuvre de plusieurs systèmes pour le stockage et le traitement des ces dernières. Parmi ces systèmes, les moteurs mémoire centrale ont été développés pour faire face à des besoins spécifiques d'applications qui ne nécessitant pas les fonctionnalités avancées des SGBD traditionnels. Ces moteurs offrent les mêmes fonctionnalités que les systèmes traditionnels sauf que contrairement à ces derniers, ils nécessitent de charger entièrement les documents en mémoire centrale pour pouvoir les traiter. Par conséquent, ces systèmes sont limités quant à la taille des documents pouvant être traités. Dans cette thèse nous nous intéressons aux aspects liés à l'évolution des données XML et à la gestion de la dimension temporelle de celles-ci. Cette thèse comprend deux parties ayant comme objectif commun le développement de méthodes efficaces pour le traitement des documents XML volumineux en utilisant les moteurs mémoire centrale.Dans la première partie nous nous focalisons sur la mise à jour des documents XML statiques. Nous proposons une technique d'optimisation basée sur la projection XML et sur l'utilisation des schémas. La projection est une méthode qui a été proposée dans le cadre des requêtes afin de résoudre les limitations des moteurs mémoire centrale. Son utilisation pour le cas des mises à jour soulève de nouveaux problèmes liés notamment à la propagation des effets des mises à jours. La deuxième partie est consacrée à la construction et à la maintenance des documents temporels, toujours sous la contrainte d'espace. A cette contrainte s'ajoute la nécessité de générer des documents efficaces du point de vue du stockage. Notre contribution consiste en deux méthodes. La première méthode s'applique dans le cas général pour lequel aucune information n'est utilisée pour la construction des documents temporels. Cette méthode est conçue pour être réalisée en streaming et permet ainsi le traitement de document quasiment sans limite de taille. La deuxième méthode s'applique dans le cas où les changements sont spécifiés par des mises à jour. Elle utilise le paradigme de projection ce qui lui permet en outre de manipuler des documents volumineux de générer des documents temporels satisfaisant du point de vue du stockage

    Analyse statique pour l'optimisation des mises à jour de documents XML temporels

    Get PDF
    The last decade has witnessed a rapid expansion of XML as a format for representing and exchanging data through the web. In order to follow this evolution, many languages have been proposed to query, update or transform XML documents. At the same time, a range set of systems allowing to store and process XML documents have been developed. Among these systems, main-memory engines are lightweight systems that are the favored choice for applications that do not require complex functionalities of traditional DBMS such as transaction management and secondary storage indexes. These engines require to loading the documents to be processed entirely into main-memory. Consequently, they suffer from space limitations and are not able to process quite large documents. In this thesis, we investigate issues related to the evolution of XML documents and to the management of the temporal dimension for XML. This thesis consists of two parts sharing the common goal of developing efficient techniques for processing large XML documents using main-memory engines. The first part investigates the optimization of update for static XML documents. We have developed a technique based on XML projection, a method that has been proposed to overcome the limitations of main-memory engines in the case of querying. We have devised for a new scenario for projection allowing the propagation of the updates effects. The second of the thesis investigates building and maintaining time-stamped XML documents under space limitations. Our contribution consists in two methods. The first method can be applied in the general case where no restriction is made on the evolution of the XML documents. This method is designed to be performed in streaming and allows thus processing large documents. The second method deals with the case where the changes are specified by updates. It is based on the projection paradigm which it allows it for processing large documents and for generating time-stamped documents satisfactory from the point of view of storage. We provide a means to comparing time-stamped wrt space occupancy.Ces dernières années ont été marquées par l'adoption en masse de XML comme format d'échange et de représentation des données stockées sur le web. Cette évolution s'est accompagnée du développement de langages pour l'interrogation et la manipulation des données XML et de la mise en œuvre de plusieurs systèmes pour le stockage et le traitement des ces dernières. Parmi ces systèmes, les moteurs mémoire centrale ont été développés pour faire face à des besoins spécifiques d'applications qui ne nécessitant pas les fonctionnalités avancées des SGBD traditionnels. Ces moteurs offrent les mêmes fonctionnalités que les systèmes traditionnels sauf que contrairement à ces derniers, ils nécessitent de charger entièrement les documents en mémoire centrale pour pouvoir les traiter. Par conséquent, ces systèmes sont limités quant à la taille des documents pouvant être traités. Dans cette thèse nous nous intéressons aux aspects liés à l'évolution des données XML et à la gestion de la dimension temporelle de celles-ci. Cette thèse comprend deux parties ayant comme objectif commun le développement de méthodes efficaces pour le traitement des documents XML volumineux en utilisant les moteurs mémoire centrale.Dans la première partie nous nous focalisons sur la mise à jour des documents XML statiques. Nous proposons une technique d'optimisation basée sur la projection XML et sur l'utilisation des schémas. La projection est une méthode qui a été proposée dans le cadre des requêtes afin de résoudre les limitations des moteurs mémoire centrale. Son utilisation pour le cas des mises à jour soulève de nouveaux problèmes liés notamment à la propagation des effets des mises à jours. La deuxième partie est consacrée à la construction et à la maintenance des documents temporels, toujours sous la contrainte d'espace. A cette contrainte s'ajoute la nécessité de générer des documents efficaces du point de vue du stockage. Notre contribution consiste en deux méthodes. La première méthode s'applique dans le cas général pour lequel aucune information n'est utilisée pour la construction des documents temporels. Cette méthode est conçue pour être réalisée en streaming et permet ainsi le traitement de document quasiment sans limite de taille. La deuxième méthode s'applique dans le cas où les changements sont spécifiés par des mises à jour. Elle utilise le paradigme de projection ce qui lui permet en outre de manipuler des documents volumineux de générer des documents temporels satisfaisant du point de vue du stockage

    Maintenance efficace de documents XML volumineux

    No full text
    International audienceThe management of temporal data is a crucial issue in many applications. Recently, XML has become the standard for data exchange and representation. Consequently, important efforts have been made on the development of temporal extensions for XML. This paper investigates how to generate or maintain space-efficient time-stamped documents. We formally define a notion of compactness which allows for comparing documents. Then, we present two methods. For the first one, called general method, no restriction is made on the evolution of the XML documents whereas for the second one, called update-based method, changes are assumed to be specified by updates. For both methods, the issue is to enable processing very large documents, to use existing engines and to comply to XQuery Update Facility. The two methods are compared in terms of space-efficiency. The update-based method produces time-stamped XML documents that are more satisfactory wrt space-efficiency than the general method. This goes to show that the update-based method effectively takes advantage of the updates.La gestion des données temporelles est un problème critique pour diverses applications. Avec l'avènement de XML comme nouveau standard de représentation et d'échange des données, d'importants efforts ont été fournis pour développer des extensions temporelles de XML. Le but de ce travail est d'explorer comment générer ou maintenir des documents estampillés garantissant un stockage efficace. Pour ce faire, nous définissons formellement la notion de compaction qui sert à comparer les documents estampillés. Nous présentons ensuite deux méthodes pour construire les documents estampillés. La première méthode est générale, elle ne fait aucune restriction sur l'évolution des documents XML. La deuxième méthode suppose que l'évolution des documents XML est le résultat de mises à jour. L'objectif des deux méthodes est le traitement de documents volumineux, l'utilisation des moteurs existants ainsi que la conformité avec le standard XQuery Update Facility. Nous comparons les deux méthodes en terme de taille des documents obtenus (compaction). La méthode basée sur les mises à jour produit des documents qui sont plus satisfaisants que ceux obtenus par la méthode générale. Ceci montre que la méthode basée sur les mises à jour que nous proposons exploite réellement celles-ci pour générer des documents plus compacts en même temps qu'elle permet de traiter des documents volumineux

    Maintenance efficace de documents XML volumineux

    Get PDF
    La gestion des données temporelles est un problème critique pour diverses applications. Avec l’avènement de XML comme nouveau standard de représentation et d’échange des données, d’importants efforts ont été fournis pour développer des extensions temporelles de XML. Le but de ce travail est d’explorer comment générer ou maintenir des documents éstampillés garantissant un stockage efficace. Pour ce faire, nous définissons formellement la notion de compaction qui sert à comparer les documents éstampillés. Nous présentons ensuite deux méthodes pour construire les documents éstampillés. La première méthode est générale, elle ne fait aucune restriction sur l’évolution des documents XML. La deuxième méthode suppose que l’évolution des documents XML est le résultat de mises à jour. L’objectif des deux méthodes est le traitement de documents volumineux, l’utilisation des moteurs existants ainsi que la conformité avec le standard XQuery Update Facility. Nous comparons les deux méthodes en terme de taille des documents obtenus (compaction). La méthode basée sur les mises à jour produit des documents qui sont plus satisfaisants que ceux obtenus par la méthode générale. Ceci montre que la méthode basée sur les mises à jour que nous proposons exploite réellement celles-ci pour générer des documents plus compacts en même temps qu’elle permet de traiter des documents volumineux

    Une Algèbre de Motifs pour l'Évaluation et l'Analyse de la Complétude des Données et l'Éxactitude des Requêtes

    No full text
    International audienceL’incomplétude des données est un problème majeur dans les applications collectant des données dans des environnements distribués, ouverts et peu fiables. Les réseaux de capteurs et l’intégration de données sont des exemples dans lesquels des données incomplètes sont dues à des défaillances matérielles ou logicielles, à des incompatibilités de données, à des autorisations d’accès aux données manquantes, etc. Dans toutes ces situations, l’interrogation et l’agrégation de données incomplètes peuvent conduire à des réponses manquantes et incorrectes. Dans cet article, nous proposons une nouvelle solution où la complétude est évaluée par rapport à des données de référence et résumée à l’aide de motifs
    corecore